<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
<script>

    /*
    * 有个人想知道，一年之内一对兔子能繁殖多少对？于是就筑了一道围墙把一对兔子关在里面。已知一对兔子每个月可以生一对小兔子，而一对兔子从出生后第3个月起每月生一对小兔子。假如一年内没有发生死亡现象，那么，一对兔子一年内（12个月）能繁殖成多少对？（兔子的规律为数列，1，1，2，3，5，8，13，21）
    * */
/*
*   1，1，2，3，5，8，13，21
*
*       规律：
*           从第三个数字开始，后一个的数字 = 前两个数字之和
*           推断出：
*               第十二个月的兔子的个数 = 第十二个数字
*           得出结论：
*               循环从3开始，到12结束
*                   for(var i = 3; i <= 12; i++){}
*           讨论循环体怎么写
*               重复的过程： 数字n = 数字(n-1) + 数字(n-2)
*
* */

    /*
    *  1      1             var x = 1;
    *  2      1             var y = 1;
    *  3      2 = 1 + 1     var z = y + x;
    *  4      3 = 2 + 1     x = y;y = z;   z = y + x;    var i = z + y;
    *  5      5 = 3 + 2     x = y;y = z;   z = y + x; var k = i + z;
    *
    *
    *  规定：
    *       使用x表示第n-2个数字
    *       使用y表示第n-1个数字
    *       使用z表示第n个数字
    *
    *       从第三个数开始
    *           都满足： z = y + x;
    *
    * */

    /*
    *  从分析得出一共要从3开始循环，到12结束
    * */
    //这里是不会重复的部分，也就是不满足规律的部分
    var x = 1;//使用x表示第n-2个数字
    var y = 1;// 使用y表示第n-1个数字
    var z ;   // 使用z表示第n个数字
    // 规律就是： 第n个数字 = 第n-1 + 第n-2
    for(var i = 3; i <= 12; i++){
        //放满足循环规律的代码
        z = y + x;
        //下次循环z变成了第n-1个数字，y变成了第n-2个数字
        x = y;//要求x永远表示第n-2个数字
        y = z;//要求y永远表示第n-1个数字
    }
    console.log(z);

</script>
</body>
</html>